package com.woniuxy.mapper;

import com.woniuxy.DTO.AlgsDisinfectRecordDTO;
import com.woniuxy.domain.AlgsDisinfectionRecord;
import com.woniuxy.vo.AlgsDisinfectRecordVO;

import java.util.List;

/**
* @author 94522
* @description 针对表【algs_disinfection_record(消毒记录表)】的数据库操作Mapper
* @createDate 2023-03-16 11:51:45
* @Entity com.woniuxy.domain.AlgsDisinfectionRecord
*/
public interface AlgsDisinfectionRecordMapper {

    int deleteByPrimaryKey(Long id);

    int insert(AlgsDisinfectionRecord record);

    int insertSelective(AlgsDisinfectionRecord record);

    AlgsDisinfectionRecord selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(AlgsDisinfectionRecord record);

    int updateByPrimaryKey(AlgsDisinfectionRecord record);
    /**
     * 查询消毒记录
     *
     * @param disinfectionRecordId 消毒记录主键
     * @return 消毒记录
     */
    public AlgsDisinfectionRecord selectAlgsDisinfectionRecordByDisinfectionRecordId(Long disinfectionRecordId);

    /**
     * 查询消毒记录列表
     *
     * @param algsDisinfectionRecord 消毒记录
     * @return 消毒记录集合
     */
    public List<AlgsDisinfectionRecord> selectAlgsDisinfectionRecordList(AlgsDisinfectionRecord algsDisinfectionRecord);

    /**
     * 新增消毒记录
     *
     * @param algsDisinfectionRecord 消毒记录
     * @return 结果
     */
    public int insertAlgsDisinfectionRecord(AlgsDisinfectionRecord algsDisinfectionRecord);

    /**
     * 修改消毒记录
     *
     * @param algsDisinfectionRecord 消毒记录
     * @return 结果
     */
    public int updateAlgsDisinfectionRecord(AlgsDisinfectionRecord algsDisinfectionRecord);

    /**
     * 删除消毒记录
     *
     * @param disinfectionRecordId 消毒记录主键
     * @return 结果
     */
    public int deleteAlgsDisinfectionRecordByDisinfectionRecordId(Long disinfectionRecordId);

    /**
     * 批量删除消毒记录
     *
     * @param disinfectionRecordIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteAlgsDisinfectionRecordByDisinfectionRecordIds(Long[] disinfectionRecordIds);

    /**
     * 饲养部员工查询出来的消毒记录
     *
     * @param algsDisinfectRecordDTO 前端传过来的参数详见DTO
     * @return 结果
     */

  public List<AlgsDisinfectRecordVO>  queryAlgsDisinfectionRecordAndTypeMsgAndStaffName(AlgsDisinfectRecordDTO algsDisinfectRecordDTO);
/**
 * 饲养部管理员查询出来的消毒记录
 *
 * @param algsDisinfectRecordDTO 前端传过来的参数详见DTO
 * @return 结果
 */
   List<AlgsDisinfectRecordVO> queryAlgsDisinfectionRecordAndTypeMsgAndStaffNameManager(AlgsDisinfectRecordDTO algsDisinfectRecordDTO);
}
